package com.stone.back.user.dao;

import java.util.List;

import org.springframework.web.bind.annotation.ResponseBody;

import com.stone.back.user.entity.BfCountry;
import com.stone.back.user.entity.BfUser;
import com.stone.base.entity.Page;

/**
 * 用户管理Dao
 * @author Stone P
 *
 */
public interface IUserDao {
	/**
	 * 查询登陆信息
	 * @param email			email
	 * @param password		密码
	 * @return				
	 */
	public List<BfUser> userLogin(String email, String password);
	
	/**
	 * 查询用户分页信息
	 * @param pageNumber						页数
	 * @param userName							用户名
	 * @param email								email
	 * @param sex								性别
	 * @param type(0:普通 1:后台 2：系统管理员)		用户类型
	 * @return
	 */
	public Page selectUserPage(int pageNumber, String userName, String email, String sex, String type);

	/**
	 * 通过登录名查找用户信息
	 * @param email			email
	 * @return
	 */
	public List<BfUser> selectUserByEmail(String email);
	
	/**
	 * 查询国家列表
	 * @return
	 */
    public @ResponseBody List<BfCountry> selectCountry();

	/**
	 * 增加用户
	 * @param user	用户信息
	 * @return
	 */
	public Integer addUser(BfUser user);

	/**
	 * 修改用户
	 * @param user	用户信息
	 * @return
	 */
	public void updateUser(BfUser user);

	/**
	 * 查询用户详情
	 * @param userId	用户Id
	 * @return
	 */
	public BfUser selectUserDetail(int userId);

	/**
	 * 删除用户
	 * @param userId	用户Id
	 * @return
	 */
	public void deleteUser(BfUser user);
}
